import tkinter as tk
from common.some_radar_library import RadarSensor

# 创建主窗口
root = tk.Tk()
root.title("雷达传感器 HMI")

# 创建雷达传感器实例
radar = RadarSensor(port='com3')  # 设备的端口


# 更新界面
def update_display():
    try:
        # RadarSensor 类有方法 get_angle, get_speed, get_distance
        target_angle = radar.get_angle()
        target_speed = radar.get_speed()
        target_distance = radar.get_distance()

        # 更新角度显示
        angle_label.config(text=f"角度: {target_angle}°")

        # 更新速度显示
        speed_label.config(text=f"速度: {target_speed} m/s")

        # 更新距离显示
        distance_label.config(text=f"距离: {target_distance} m")

    except Exception as e:
        print(f"Error updating display: {e}")
    finally:
        # 每秒钟更新一次
        root.after(1000, update_display)


# 显示角度、速度和距离
angle_label = tk.Label(root, text="角度: --°")
speed_label = tk.Label(root, text="速度: -- m/s")
distance_label = tk.Label(root, text="距离: -- m")

# 布局控件
angle_label.pack()
speed_label.pack()
distance_label.pack()

# 启动事件循环
update_display()  # 初始更新
root.mainloop()

# 程序结束时关闭串口
radar.close()
